<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Producto_atractivo_lst( $this );

	class Producto_atractivo_lst extends Lst
	{
	function Producto_atractivo_lst( &$oModule )
		{
			$this->Lst( $oModule );
		}
	function initialize()
	{
		$this->oFiltro = $this->oModule->loadClass( 'Producto_atractivo_frm' );
		$this->aFields = array_merge ( (array)$this->aFields,  (array)$this->oFiltro->getFieldArray() );
		
		$this->setTitle ( "Atractivos" );
		$this->setSummary( "Esta tabla contiene el listado de Atractivos de los productos turisticos" );
		$this->addColumnAction ( 'Atractivo', VER_ATRACTIVO, 'ncAtractivo', 'cdAtractivo');
		$this->addColumnAction ( 'Producto', VER_PRODUCTO_TURISTICO, 'ncProducto', 'cdProducto');
		$this->addColumnStar ( 'bEstrella', MODIFICAR_ESTRELLA_ATRACTIVO, 'ncAtractivo', 'bEstrella' );
		$this->addColumnTag( 'ncRotulo', ACTUALIZAR_TAG_ATRACTIVO, 'ncAtractivo', 'gtAtractivoRotulo', $this->oDatabase->getKeyArray('SELECT ncRotulo, cdRotulo FROM gtRotuloAtractivo' ) );
	}
	function setLevel()
		{
			switch ( $this->getOptionView() )
			{
				case 'L':
					$this->aShowColumns = array( 'bEstrella', 'ncRotulo', 'Producto', 'Atractivo' );
					break;
			}
			if ( array_key_exists( 'ncProducto' , $this->aFields )  ) unset($this->aShowColumns[array_search( 'Producto',$this->aShowColumns)]);
			if ( array_key_exists( 'ncAtractivo' , $this->aFields ) ) unset($this->aShowColumns[array_search( 'Atractivo',$this->aShowColumns)]);
		}
	function query()
		{
			// Arma el Query
				$cSql = "SELECT *
								FROM gtProductoAtractivo as PAt
								JOIN gtAtractivo as Atr
									ON Atr.ncAtractivo = PAt.ncAtractivo
								JOIN gtProductoTuristico as PTu
									ON PAt.ncProducto = PTu.ncProducto ";
			// Arma el Filtro de la Consulta
				$this->oWhere->addArray ( $this->oFiltro->getFilterdArray('PAt') );
				return $cSql . $this->oWhere->make();
		}
	function makeListActions()
		{
			$cParametroRegistro =  $this->getFieldString();
			$this->addListAction ( AGREGAR_PRODUCTO_ATRACTIVO, $cParametroRegistro, 'I' );
			$this->addListAction ( AGREGAR_PRODUCTO_ATRACTIVO_MASIVO, $cParametroRegistro, '',  VENTANA_SECUNDARIA  );
		}
	function makeRowActions( $aRow )
		{
			$cParametroRegistro = "ncProducto=" . $aRow["ncProducto"] . '&amp;' .  "ncAtractivo=" . $aRow["ncAtractivo"];
			$this->addRowAction ( MODIFICAR_PRODUCTO_ATRACTIVO, $cParametroRegistro , '', VENTANA_SECUNDARIA );
			$this->addRowAction ( ELIMINAR_PRODUCTO_ATRACTIVO ,  $cParametroRegistro );
		}
	}
?>